SPSS调节回归教程
作者:Ruben Geert van den Berg,归类于 回归分析
一位运动医生经常测量其客户的肌肉百分比。他还会询问他们通常每周花费多少小时进行训练。我们的医生怀疑,训练时间越多的客户,肌肉也越多。此外,他认为训练对肌肉的影响会随着年龄的增长而下降。在多元回归分析中,这被称为调节交互效应 (moderation interaction effect)。下图说明了这一点。
那么,如何检验这种调节效应呢?通常,我们分 3 个步骤进行:
- 如果两个预测变量都是定量变量,我们通常首先对它们进行均值中心化 (mean center);
- 然后,我们将中心化后的预测变量相乘,得到一个交互预测变量 (interaction predictor variable);
- 最后,我们将两个均值中心化后的预测变量和交互预测变量输入到回归分析中。
SPSS 调节回归 - 示例数据
这 3 个预测变量都存在于 muscle-percent-males-interaction.sav 数据集中,部分数据如下所示。
我们使用了一个简单的工具来进行均值中心化,该工具可以从 SPSS 均值中心化和交互工具 下载。
或者,手动进行均值中心化也不太难,具体方法请参考 如何在 SPSS 中对预测变量进行均值中心化?
SPSS 调节回归 - 对话框
我们的调节回归与任何其他多元线性回归分析没有什么不同:我们依次点击 A nalyze(分析) R egression(回归)
L inear(线性),然后按照下图填写对话框。
点击 P aste(粘贴)会生成以下 语法。 让我们运行它。
***使用均值中心化预测变量和交互预测变量进行回归分析。***
REGRESSION
/MISSING LISTWISE
/STATISTICS COEFF OUTS R ANOVA ZPP
/CRITERIA=PIN(.05) POUT(.10)
/NOORIGIN
/DEPENDENT mperc
/METHOD=ENTER cent_age cent_thours int_1
/SCATTERPLOT=(*ZRESID ,*ZPRED)
/RESIDUALS HISTOGRAM(ZRESID).
SPSS 调节回归 - 系数输出
年龄 (Age) 与肌肉百分比呈负相关。平均而言,客户每年会减少 0.072 个百分点。
训练时间 (Training) 与肌肉百分比呈正相关:客户每周每训练 1 小时,肌肉百分比往往会增加 0.9 个百分点。
交互项 (interaction) 预测变量的负 B 系数表明,随着年龄的增长,训练效果变得更负面 - 或者说不那么正面。
现在,任何效应要具有重要性,它必须在 统计上显著 并且 具有合理的 效应量。
在 p = 0.000 时,所有 3 个效应都具有高度统计显著性。作为效应量度量,我们可以使用部分相关 (semipartial correlation) 相关系数 (表示为“Part”),其中
- r = 0.10 表示小效应;
- r = 0.30 表示中等效应;
- r = 0.50 表示大效应。
训练效果几乎很大,而年龄和年龄与训练的交互作用几乎是中等程度的。无论_统计_显著性如何,我认为如果交互作用的部分相关系数 r < 0.10 左右,则可以忽略它,但这里显然不是这种情况。因此,我们将通过简单斜率分析深入研究交互作用。
关于残差图 (residual plots) (此处未显示),请注意
创建年龄组 (Age Groups)
我们的简单斜率分析从创建年龄组开始。我将选择 tertile groups (三分位数分组):最年轻,中间和最年长的 33.3%的客户将组成我的小组。这是一个任意的选择:我们可以创建 2、3、4 或任意数量的组。组大小相等也不是强制性的,甚至可能有些不寻常。无论如何,下面的语法会在我们的数据中创建一个新的变量来表示年龄三分位数分组。
***创建年龄三分位数分组。***
rank age
/ntiles(3) into agecat3.
***标记新变量和值。***
variable labels agecat3 'Age Tertile Group'.
value labels agecat3 1 'Youngest Ages' 2 'Intermediary Ages' 3 'Highest Ages'.
***检查每个年龄组的年龄描述性统计信息。***
means age by agecat3
/cells count min max mean stddev.
结果
从该表中可以得出一些基本结论:
- 我们的年龄组具有完全相等的样本量,n = 81;
- 组平均年龄分布不均匀:年轻人和中年人之间的差异(约 6 岁)远小于中年人和老年人之间的差异(约 13 岁);
- 最高年龄组的标准差远大于其他 2 个组。
第 2 点和第 3 点是由年龄的 偏度 (skewness) 引起的,并 不赞成 使用三分位数分组。但是,我认为拥有相等的组大小很容易超过这两个缺点。
简单斜率分析 I - 拟合线
现在让我们可视化年龄和训练之间的调节交互作用。我们将首先创建一个散点图,如下所示。
点击 P aste(粘贴)会生成以下语法。
***创建按年龄组划分的未中心化训练时间与肌肉百分比的散点图。***
GRAPH
/SCATTERPLOT(BIVAR)=thours WITH mperc BY agecat3
/MISSING=LISTWISE
/TITLE='Muscle Percentage by Training Hours by Age Group'.
***运行图表后,手动添加单独的拟合线。***
将单独的拟合线添加到散点图
创建散点图后,我们将双击它来编辑它。在打开的图表编辑器窗口中,我们单击标有“Add Fit Line at Subgroups”(在子组中添加拟合线)的图标。
添加拟合线后,我们将简单地关闭图表编辑器。 小提示:带有(单独的)拟合线的散点图可以从 SPSS 25+ 版本中的图表构建器一步到位创建,但我们将在以后的某个时候介绍它。
结果
我们的拟合线很好地解释了年龄与训练交互作用效应的性质:
- 两个最年轻的年龄组显示,随着训练时间的增加,肌肉百分比稳步增加;
- 然而,对于最年长的客户,训练似乎对肌肉百分比几乎没有影响。这就是训练对肌肉百分比的影响如何被年龄 调节 的;
- 平均而言,这 3 条线都在增加。这是训练的 主效应 (main effect) ;
- 总的来说,最年长组的拟合线低于其他 2 个组。这是年龄的 主效应。
同样,两个最年轻组之间的相似性可能是由于年龄的偏度所致:这些组的平均年龄没有太大差异,但与最高年龄组的平均年龄 非常 不同。
简单斜率分析 II - 系数
在可视化我们的交互作用效应后,让我们现在对其进行检验:我们将分别对我们的 3 个年龄组运行训练对肌肉百分比的简单线性回归。在 SPSS 中执行此操作的一个好方法是使用 SPLIT FILE。
REGRESSION 语法是从菜单中创建的,就像之前一样,但仅以(未中心化的)训练作为预测变量。
***按年龄组分割文件。***
sort cases by agecat3.
split file layered by agecat3.
***运行未中心化训练时间对肌肉百分比的简单线性回归。***
REGRESSION
/MISSING LISTWISE
/STATISTICS COEFF OUTS R ANOVA ZPP
/CRITERIA=PIN(.05) POUT(.10)
/NOORIGIN
/DEPENDENT mperc
/METHOD=ENTER thours
/SCATTERPLOT=(*ZRESID ,*ZPRED)
/RESIDUALS HISTOGRAM(ZRESID).
***关闭分割文件。***
split file off.
结果
系数表证实了我们之前的结果:
对于最年轻的年龄组,训练效果在 p = 0.000 时具有统计学意义。此外,其部分相关系数 r = 0.59 表明效应很大;
中年年龄组的结果与最年轻年龄组的结果大致相似;
对于最高年龄组,部分相关系数 r = 0.077 并不重要。即使它在统计上显着(p = 0.49 时不是),我们也不会认真对待它。
最后,残差直方图(此处未显示)没有显示任何异常情况。除了某些异常值外,最高年龄组的残差散点图看起来是曲线的。我们或许应该仔细研究一下这个分析,但我们将在另一天再进行分析。
感谢阅读!